array(5, 5) Real mat
array(5) Real mean
array(5) Real cr
array(5) Partition p
Int best
Partition real
Int i

real = "real.clu"  // CHANGE: uso de aspas

for(file f: "dir") {  // CHANGE: uso de aspas no dir
	p.add (f) // add: insere um ou mais elementos no final do array
}

mat = calcCR(p) // calcula CR de todas as particoes com todas as particoes

print(mat) // imprimir os valores em formato de matriz, com enter no final de cada linha

mean = calcMean(mat)

cr = calcCR(real, p)

forall i (0, p.size()) { 
	/* imprime o nome do arquivo, o CR em relacao a particao real e a media do CR */
	print (p[i], " ", cr[i], " ", mean[i], "\n")
}

best = highestCR(mean) // retorna o indice do maior valor

print("Highest Mean CR: ", p[best], " ", mean[best])




/*
mat = calcCR(p) // calcula CR de todas as particoes com todas as particoes
Neste caso, deve-se verificar que mat tem duas dimensoes compativeis com p.
Seria o mesmo codigo de:
forall i (0, p.size()) {
	forall j (0, p.size()) {
		mat[i,j] = calcCR(p[i], p[j])
	}
}
*/

/*
mean = calcMean(mat)
mesmo que:
forall i (0, p.size()) {
	mean[i] = calcMean(mat[i]) // media da linha i de mat
}
*/

